Hands-free transactions verified by location

ABSTRACT

Conducting hands-free transactions comprises a server at a payment processing system, a user computing device, and a merchant computing device. The payment processing system registers a merchant system as a hands-free payment participant and provides a beacon identifier. The payment processing system receives a communication from a hands- free payment application on a user computing device, the communication comprising a transaction token, an identification of a user account, and the beacon identifier received by the user computing device via a wireless communication from a device associated with the merchant system and transmits the transaction token to the merchant system computing device. The payment processing system receives from the merchant system computing device, a transaction request, the transaction request comprising the token and transaction data associated with the transaction request and conducts the transaction between the user account and the merchant system based on the received token and transaction request.

RELATED APPLICATIONS

This patent application is a continuation of U.S. patent applicationSer. No. 14/540,009, filed Nov. 12, 2014 and entitled “ Hands-FreeTransactions Verified by Location,” which claims priority under 35U.S.C. § 119 to U.S. Patent Application No. 62/023,739, filed Jul. 11,2014 and entitled “Hands-Free Transactions.” The entire contents of theabove-identified applications are hereby fully incorporated herein byreference.

TECHNICAL FIELD

The present disclosure relates generally to retail transactions, andmore particularly to conducting hands-free transactions at a merchantlocation that allow a user to conduct transactions without engaging theuser computing device. The disclosure additionally relates to making thetransactions more secure and efficient.

BACKGROUND

When consumers make purchases at a merchant location, many methods ofconducting a transaction are available. Consumers may use many differentpayment cards or accounts for purchases, such as gift cards, debitcards, credit cards, stored value cards, and other cards or accounts.The user account identifiers and other data represented by the cards maybe communicated to the merchant system via magnetic stripes, near fieldcommunication technologies, manual input, and other suitable mechanisms.

Conventional payment systems require the consumer to perform actions toprovide the user account identifiers and other data to the merchantsystem. For example, the user may be required to actuate a start buttonor initiate an application. In another example, the user may be requiredto tap or swipe a user computing device to initiate a transaction. Otheruser interactions may be required by conventional payment systems.

SUMMARY

Techniques herein provide computer-implemented methods to conducthands-free transactions. In an example embodiment, conducting hands-freetransactions comprises a server at a payment processing system, a usercomputing device, and a merchant computing device. The paymentprocessing system registers a merchant system as a hands-free paymentparticipant and provides a beacon identifier. The merchant systembroadcasts the beacon, which is received by a user computing device atthe merchant's location. The payment processing system receives acommunication from a hands-free payment application on the usercomputing device. The communication comprises a transaction token, anidentification of a user account, and the beacon identifier received bythe user computing device and transmits the transaction token to themerchant system computing device. The payment processing system receivesfrom the merchant system computing device, a transaction request. Thetransaction request comprises the token and transaction data associatedwith the transaction request. The payment processing system conducts thetransaction between the user account and the merchant system based onthe received token and transaction request.

In certain other example aspects described herein, systems and computerprogram products to conduct hands-free transactions are provided.

These and other aspects, objects, features, and advantages of theexample embodiments will become apparent to those having ordinary skillin the art upon consideration of the following detailed description ofillustrated example embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram depicting a system for conducting hands-freetransactions, in accordance with certain example embodiments.

FIG. 2 is a block flow diagram depicting a method for conductinghands-free transactions, in accordance with certain example embodiments.

FIG. 3 is a block flow diagram depicting a method for a merchantcomputing device to broadcast a beacon via a wireless communication, inaccordance with certain example embodiments.

FIG. 4 is a block flow diagram depicting a method for a user computingdevice to recognize a merchant computing device beacon, in accordancewith certain example embodiments.

FIG. 5 is a block flow diagram depicting a method for a user computingdevice to provide a token authorization to a merchant, in accordancewith certain example embodiments.

FIG. 6 is a block flow diagram depicting a method for a user computingdevice to recognize a beacon via wireless communication at a location ofa merchant system and approve the merchant system, in accordance withcertain example embodiments.

FIG. 7 is a block flow diagram depicting a method for a user computingdevice to recognize a beacon via wireless communication at a location ofa merchant system and approve the merchant system using location data,in accordance with certain example embodiments.

FIG. 8 is a block diagram depicting a computing machine and module, inaccordance with certain example embodiments.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS Overview

The example embodiments described herein provide computer-implementedtechniques to conduct hands-free payments. In an example embodiment, auser installs a hands-free application on a user computing device. Theuser maintains a user account on a payment processing system forconducting transactions. A merchant computing device at a merchantlocation provides a beacon identifier that is received by the usercomputing device.

The user computing device generates a token for conducting a transactionand transmits the token to the payment processing system. The paymentprocessing system transmits the token to the merchant computing device.The merchant computing device stores the token for use in a transactionwith the user computing device.

The user approaches the salesperson to conduct a transaction using thehands-free application. The salesperson initiates the transaction on themerchant computing device and identifies the user on a user interface ofthe merchant computing device. The merchant computing device transmitsthe transaction details and the token for the user to the paymentprocessing system. The payment processing system verifies the details ofthe transaction and the token and conducts the transaction. The paymentprocessing system communicates a notification to the user computingdevice with the transaction data.

In an example embodiment, the beacon identifier of the merchant systemand other authorized beacon identifiers are stored on a database. Theuser computing device compares a received beacon identifier to thedatabase and determines if the merchant beacon is authorized forhands-free transactions with the user.

In another example embodiment, a global positioning system (“GPS”)module of a user computing device is utilized to determine if themerchant beacon is authorized for hands-free transactions with the user.The user computing device, upon receiving a beacon identifier,determines the location of the user computing device, and thus, thelocation of the beacon. The location is compared to a database of beaconlocations to determine if the beacon is broadcasting from the expectedlocation. If the locations match, then the user computing devicedetermines that a subsequent hands-free transaction with the merchantmay proceed.

By using and relying on the methods and systems described herein, thehands- free application and payment processing system dynamicallyprovide accurate and reliable transactions for a user without a neededaction from the user. As such, the systems and methods described hereinmay be employed to allow the user to conduct a transaction usingcommunications from the user computing device, the merchant computingdevice, and the payment processing system that are secure and efficient.The user is not troubled to provide any actuation or other initiatingsteps to conduct a transaction. The system may use the location of theuser computing device to make the transaction more secure. The systemmay use communication between the user computing device and the paymentprocessing system to reduce fraudulent activities by the merchant. Thesystem may use beacon identifiers between the user computing device andthe merchant computing device to reduce fraudulent activities. Hence,the methods and systems described herein decrease user frustration andpermit accurate and reliable transactions for a user.

Example System Architectures

Turning now to the drawings, in which like numerals indicate like (butnot necessarily identical) elements throughout the figures, exampleembodiments are described in detail.

FIG. 1 is a block diagram depicting a system 100 for conductinghands-free transactions, in accordance with certain example embodiments.As depicted in FIG. 1, the system 100 includes network computing devices110, 130, 140, and 150 that are configured to communicate with oneanother via one or more networks 120. In some embodiments, a user 101 ora salesperson 102 associated with a device must install an applicationand/or make a feature selection to obtain the benefits of the techniquesdescribed herein.

In example embodiments, the network 120 can include a local area network(“LAN”), a wide area network (“WAN”), an intranet, an Internet, storagearea network (“SAN”), personal area network (“PAN”), a metropolitan areanetwork (“MAN”), a wireless local area network (“WLAN”), a virtualprivate network (“VPN”), a cellular or other mobile communicationnetwork, Bluetooth, Bluetooth low energy, near field communication(“NFC”), Wi-Fi, or any combination thereof or any other appropriatearchitecture or system that facilitates the communication of signals,data, and/or messages. Throughout the discussion of example embodiments,it should be understood that the terms “data” and “information” are usedinterchangeably herein to refer to text, images, audio, video, or anyother form of information that can exist in a computer-basedenvironment.

Each network computing system 110, 130, 140, and 150 includes a devicehaving a communication module capable of transmitting and receiving dataover the network 120. For example, each network computing device 110,130, 140, and 150 can include a server, desktop computer, laptopcomputer, tablet computer, a television with one or more processorsembedded therein and/or coupled thereto, smart phone, handheld computer,personal digital assistant (“PDA”), or any other wired or wireless,processor-driven device. In the example embodiment depicted in FIG. 1,the network computing devices 110, 130, 140, and 150 are operated byusers 101, merchant system operators, payment processing systemoperators, and salespersons 102, respectively.

In the examples provided herein, actions performed by the user 101 maybe performed by the salesperson 102 in other embodiments. Examplesdescribed as being performed by the user computing device 110 may beperformed by the merchant computing device 150 or the payment processingsystem 140 in other embodiments.

An example user computing device 110 comprises a data storage unit 112,a communication application 113, a web browser 114, a user interface115, a global positioning system (“GPS”) module 118, and a hands-freepayment application 116.

In an example embodiment, the data storage unit 112 comprises a local orremote data storage structure accessible to the user computing device110 suitable for storing information. In an example embodiment, the datastorage unit 112 stores encrypted information, such as HTML5 localstorage.

In an example embodiment, the user 101 uses a communication application113, such as a web browser 114 application or a stand-alone hands-freepayment application 116, to view, download, upload, or otherwise accessdocuments or web pages via a distributed network 120.

In an example embodiment, the communication application 113 can interactwith web servers or other computing devices connected to the network120, including the user computing device 110, a point of sale (“POS”)terminal 134 associated with a merchant system 130 and/or a web server(not depicted) associated with a payment processing system 140.

In an example embodiment, the web browser 114 can enable the user 101 tointeract with web pages using the user computing device 110.

In an example embodiment, the user interface 115 enables the user 101 tointeract with the hands-free payment application 116 and/or web browser114. For example, the user interface 115 may be a touch screen, avoice-based interface, or any other interface that allows the user 101to provide input and receive output from an application or module on theuser computing device 110. In an example embodiment, the user 101interacts via the user interface 115 with the hands-free paymentapplication 116 and/or web browser 114 to configure user accounts on apayment processing system hands-free module 141. In another exampleembodiment, the user 101 interacts via the user interface 115 with thehands-free payment application 116 and/or the web browser 114 to enablehands-free payments, if needed.

In an example embodiment, the GPS module 118 communicates with one ormore satellites of the Global Positioning System (“GPS”) or othersatellite-based location system to determine the location of the usercomputing device 110. In an example embodiment, the delivery system 140periodically or continuously communicates with the GPS module 118 duringapplicable time periods to determine and log the location of the usercomputing device 110. In another embodiment, the location of the usercomputing device 110 is identified based on Wi-Fi signals, cellularlocation, or any suitable location identifying technology. Any locationdetermining hardware, software, or combination of hardware and softwareis represented by the GPS module 118.

In an example embodiment, the hands-free payment application 116 is aprogram, function, routine, applet, or similar entity that exists on andperforms its operations on the user computing device 110. In certainexample embodiments, the user 101 must install the hands-free paymentapplication 116 and/or make a feature selection on the user computingdevice 110 to obtain the benefits of the techniques described herein. Inan example embodiment, the user 101 may access the hands-free paymentapplication 116 on the user computing device 110 via the user interface115. In an example embodiment, the hands-free payment application 116may be associated with the payment processing system 140. In anotherexample embodiment, the application may be associated with the merchantsystem 130. In yet another example embodiment, there are two hands-freepayment applications 116, one associated with the merchant system 130and another associated with the payment processing system 140.

In certain example embodiments, one or more functions herein describedas performed by the hands-free payment application 116 may also beperformed by a web browser 114 application, for example, a web browser114 application associated with a merchant system website 134 orassociated with the payment processing system 140. In certain exampleembodiments, one or more functions herein described as performed by thehands-free payment application 116 may also be performed by the usercomputing device operating system. In certain example embodiments, oneor more functions herein described as performed via the web browser 114may also be performed via the hands-free payment application 116.

In an example embodiment, the user computing device 110 communicateswith the merchant system 130 and the payment processing system 140 viathe network 120.

An example merchant system 130 comprises a server 133, POS terminal 134,and a data storage unit 132. In an example embodiment, the merchantsystem 130 communicates with a payment processing system 140 over thenetwork 120. In example embodiments described herein, the merchantsystem 130 is a separate entity from the payment processing system 140.However, in certain other example embodiments, the merchant system 130is associated with a payment processing system 140, is a component ofanother system along with a payment processing system 140, comprises apayment processing system 140, or is a component of a payment processingsystem 140.

In an example embodiment, the data storage unit 132 comprises a local orremote data storage structure accessible to the merchant system 130suitable for storing information. In an example embodiment, the datastorage unit 132 stores encrypted information, such as HTML5 localstorage.

In an example embodiment, the web server 133 provides content accessibleby the user 101 through the web browser 114 and/or hands-free paymentapplication 116 on the user computing device 110, including but notlimited to html documents, images, style sheets, and scripts. In anexample embodiment, the server 133 supports the merchant system website134.

In an example embodiment, the POS terminal 134 comprises a computingdevice that is configured to accept payments from users 101, from usercomputing devices 110, or other parties. The POS terminal 134 maycommunicate, via the network, with the user computing device 110, themerchant server 133, the merchant computing device 150, the paymentprocessing system 140, or any suitable device or system. The POSterminal 134 may comprise a barcode scanner, a user interface, acustomer display, or any suitable elements to enable the salesperson 102to initiate and conduct a transaction. The POS terminal 134 in theexample embodiments may comprise a function enabling the salesperson 102to input an indication that the transaction was conducted with thehands-free application 156 on the merchant computing device 150, andthat the POS terminal 134 should consider the transaction completed.

An example payment processing system 140 comprises a payment processingsystem hands-free module 141 and a data storage unit 142. In an exampleembodiment, the user 101 has a user account with the payment processingsystem 140. In an example embodiment, the payment processing systemhands-free module 141 manages the user account. For example, the paymentprocessing system hands-free module 141 may receive a user's usernameand password and allow the user 101 to access services provided by thepayment processing system 140. In an example embodiment, the paymentprocessing system hands-free module 141 communicates with the hands-freepayment application 116 resident on the user computing device 110. Inanother example embodiment, the payment processing system hands-freemodule 141 communicates with the user 101 via the user computing deviceweb browser 114. In an example embodiment, the payment processing systemhands- free module 141 manages the user's digital wallet account.

In an example embodiment, the payment processing system hands-freemodule 141 communicates with the merchant system 130, account issuersystems (not depicted) and/or acquirers (not depicted), or othersuitable financial systems (not depicted) to process payments. In anexample embodiment, the payment processing system hands-free module 141retrieves user financial account information and credit accountinformation from other financial institutions, from the data storageunit 142, or by communicating with the hands-free payment application116 over the network 120. In an example embodiment, the paymentprocessing system hands-free module 141 requests a credit authorizationfrom an issuer system through an acquirer system and receives the creditauthorization. In an example embodiment, the payment processing systemhands-free module 141 initiates a bank transfer with a financialinstitution system. In an example embodiment, the payment processingsystem hands-free module 141 receives the bank transfer or completes acredit card transaction associated with the credit card authorization.

In certain example embodiments, the payment processing system hands-freemodule 141 creates tokens, verifies tokens, verifies rescue codes, andperforms other actions as described herein. In an example embodiment,the payment processing system hands-free module 141 generates a receiptof a transaction and transmits the receipt to the user computing device110.

In an example embodiment, the data storage unit 142 comprises any localor remote data storage structure accessible to the payment processingsystem hands-free module 141 suitable for storing information. In anexample embodiment, the data storage unit 142 stores encryptedinformation, such as HTML5 local storage. In an example embodiment, thedata storage unit 142 stores user financial account information and/oruser credit account information.

An example merchant computing device 150 comprises a data storage unit152, a communication application 153, a web browser 154, a userinterface 155, and a hands- free payment application 156.

In an example embodiment, the data storage unit 152 comprises a local orremote data storage structure accessible to the merchant computingdevice 150 suitable for storing information. In an example embodiment,the data storage unit 152 stores encrypted information, such as HTML5local storage.

In an example embodiment, the salesperson 102 uses a communicationapplication 153, such as a web browser 154 application or a stand-alonehands-free payment application 116, to view, download, upload, orotherwise access documents or web pages via a distributed network 120.

In an example embodiment, the communication application 153 can interactwith web servers or other computing devices connected to the network120, including the merchant POS terminal 134, a web server 133associated with a merchant system 130 and/or a payment processing systemhands-free module 141.

In an example embodiment, the web browser 154 can enable the salesperson102 to interact with web pages using the merchant computing device 150.In an example embodiment, the salesperson 102 is able to accesstransaction information form the POS terminal 134, and access useraccount information from the user computing device 110 and/or thepayment processing system hands-free module 141.

In an example embodiment, the user interface 155 enables the salesperson102 to interact with the hands-free payment application 156 and/or webbrowser 154. For example, the user interface 155 may be a touch screen,a voice-based interface or any other interface that allows thesalesperson 102 to provide input and receive output from an applicationor module on the merchant computing device 150. In an exampleembodiment, the salesperson 102 interacts via the user interface 155with the hands-free payment application 156 and/or web browser 154 toaccess a user token to conduct a transaction via the payment processingsystem 140.

In an example embodiment, the hands-free payment application 156 is aprogram, function, routine, applet, or similar entity that exists on andperforms operations on the merchant computing device 150. In certainexample embodiments, the salesperson 102 must install the hands-freepayment application 156 and/or make a feature selection on the merchantcomputing device 150 to obtain the benefits of the techniques describedherein. In an example embodiment, the salesperson 102 may access thehands-free payment application 156 on the merchant computing device 150via the user interface 155. In an example embodiment, the hands-freepayment application 156 may be associated with the merchant system 130.In another example embodiment, the application may be associated withthe payment processing system 140. In yet another example embodiment,there are two applications 156, one associated with the merchant system130 and another associated with the payment processing system 140.

In certain example embodiments, one or more functions herein describedas performed by the hands-free payment application 156 may also beperformed by a web browser 154 application, for example, a web browser154 application associated with a merchant system website 134 orassociated with the payment processing system 140. In certain exampleembodiments, one or more functions herein described as performed by thehands-free payment application 156 may also be performed by the merchantcomputing device operating system. In certain example embodiments, oneor more functions herein described as performed via the web browser 154may also be performed via the hands-free payment application 156.

In certain example embodiments, the merchant computing device 150 may bepart of the merchant system 130. The merchant computing device 150functions described herein may be performed by the merchant server 133,POS terminal 134, or other merchant device.

It will be appreciated that the network connections shown are exampleand other means of establishing a communications link between thecomputers and devices can be used. Moreover, those having ordinary skillin the art having the benefit of the present disclosure will appreciatethat the user computing device 110, the merchant system 130, the POSterminal 134, the payment processing system 140, and the merchantcomputing device 150 illustrated in FIG. 1 can have any of several othersuitable computer system configurations. For example, a user computingdevice 110 embodied as a mobile phone or handheld computer may or maynot include all the components described above.

In example embodiments, the network computing devices and any othercomputing machines associated with the technology presented herein maybe any type of computing machine such as, but not limited to, thosediscussed in more detail with respect to FIG. 8. Furthermore, anymodules associated with any of these computing machines, such as modulesdescribed herein or any other modules (scripts, web content, software,firmware, or hardware) associated with the technology presented hereinmay by any of the modules discussed in more detail with respect to FIG.8. The computing machines discussed herein may communicate with oneanother as well as other computer machines or communication systems overone or more networks, such as network 105. The network 105 may includeany type of data or communications network, including any of the networktechnology discussed with respect to FIG. 8.

Example Processes

The example methods illustrated in FIGS. 2-7 are described hereinafterwith respect to the components of the example operating environment 100.The example methods of FIGS. 2-7 may also be performed with othersystems and in other environments.

FIG. 2 is a block diagram depicting a method 200 for conducting a hands-free transaction, in accordance with certain example embodiments. Themethod 200 is described with reference to the components illustrated inFIG. 1.

In block 210, the merchant computing device 150 broadcasts a beacon viaa wireless communication. Block 210 is described in greater detailhereinafter with reference to the method 210 described in FIG. 3.

FIG. 3 is a block diagram depicting a method 210 for a merchantcomputing device 150 to broadcast a beacon via a wireless communication,in accordance with certain example embodiments. The method 210 isdescribed with reference to the components illustrated in FIG. 1.

In block 310, the merchant system 130 registers with the paymentprocessing system 140. For example, the merchant system 130 may contactthe payment processing system 140 to become associated with thehands-free transaction process. The merchant system 130 may obtain amerchant account, receive the appropriate applications and software,request authorization to participate, or perform any action required bythe payment processing system 140.

The merchant system 130 may use the merchant computing device 150, thepoint of sale (“POS”) terminal 134, the merchant server 133, or anysuitable computing device to request and configure a merchant account.The merchant account may allow the merchant system 130 to participate insome or all of the activities described in the methods herein.

In block 320, the merchant computing device 150 installs a hands-freepayment application 156. In an example, the merchant computing device150 is registered as an authorized agent of the merchant system 130. Themerchant computing device 150 may be identified by an identifier, by aprovided password, a serial number, or by any suitable manner.

In an example, the merchant computing device 150 downloads thehands-free payment application 156 from the payment processing systemhands-free module 141 over the network 120. The merchant computingdevice 150 may download the hands-free payment application 156 from themerchant system server 133. The merchant computing device 150 may obtainthe hands-free payment application 156 from any suitable location. Thehands-free payment application 156 on the merchant computing device 150may be integrated into an existing account that is shared with themerchant system server 133, the POS terminal 134, or any suitablecomputing device or system. A salesperson 102 or another merchant systemoperator may be required to make a feature selection to obtain thebenefits of the techniques described herein.

In block 330, the merchant computing device 150 receives a beaconidentifier. For example, the hands-free payment application 156, themerchant computing device 150, the merchant system server 133, oranother computing device requests a beacon identifier from the paymentprocessing system 140. The beacon may be a wireless signal emitted bythe merchant computing device 150 comprising a beacon identifier, amerchant system 130 identifier, a merchant computing device 150identifier, or other identifier.

In an example, the beacon identifier is a service set identifier(“SSID”), or other network name or identifier. The beacon identifier maybe generated by the payment processing system hands-free module 141, themerchant computing device 150, the merchant server 133, or any suitablecomputing device. In certain embodiments, the beacon identifier is aunique, but fixed, identifier. That is, a particular beacon identifiermay be utilized until changed by the payment processing systemhands-free module 141, the merchant computing device 150, the merchantserver 133, or any suitable computing device. In an alternateembodiment, the beacon identifier may be unique, but random. That is,the beacon identifier may be changed randomly, or upon any suitableschedule by the payment processing system hands-free module 141, themerchant computing device 150, the merchant server 133, or any suitablecomputing device.

The wireless signal emitted by the merchant computing device 150 may beany suitable technology, such as Wi-Fi direct, Bluetooth, low-energyBluetooth, infrared, or any other suitable technology, and the merchantcomputing device 150 may include corresponding hardware and softwarecomponents to emit the beacon via the associated technology.

In block 340, the merchant computing device 150 transmits the beacon viawireless communication at the location of the merchant system 150. Themerchant computing device 150 may be configured to broadcast thewireless signal at only certain times or locations, or continuously. Themerchant computing device 150 may limit or extend the strength of thebroadcast beacon, if needed. The beacon is receivable and recognizableby other computing devices that are within range of the wireless signal.The beacon may be transmitted on one communication technology or on aplurality of communication technologies.

In a certain example embodiment, the beacon identifier is programmed onexternal communication access points. The merchant hands-freeapplication 156 may be used to configure the external communicationaccess point(s). For example, the merchant hands-free application 156may utilize functions of the merchant computing device 150 tocommunicate instructions to the external communication access points.The instructions may include the beacon identifier, the requestedcommunication technology, the time to broadcast, and/or any othersuitable instructions. The instructions may be provided by any othersuitable computing device.

The external communication access points may be employed to allow avariety of user computing devices 110 to receive the beacon despitediffering wireless communication technology capabilities or in variouslocations in the merchant location. The external communication accesspoints may allow the beacon to be broadcast over a wider area than themerchant computing device 150 alone is capable of broadcasting.

From block 340, the method 210 proceeds to block 220 of FIG. 2.

Returning to FIG. 2, in block 220, the user computing device 110recognizes the merchant computing device beacon. Block 220 is describedin more detail hereinafter with reference to the method 220 described inFIG. 4.

FIG. 4 is a block diagram depicting a method 220 for the user computingdevice 110 to recognize the merchant computing device beacon, inaccordance with certain example embodiments. The method 220 is describedwith reference to the components illustrated in FIG. 1.

In block 410, the user 101 registers with the payment processing system140. For example, the user 101 may contact the payment processing system140 to register a user account. The user 101 may obtain a user accountnumber, receive the appropriate applications and software to install onthe user computing device 110, request authorization to participate inthe hands-free payment processing, or perform any action required by thepayment processing system 140. The user 101 may utilize the functions ofthe user computing device 110, such as the user interface 115 and theweb browser 114, to register and configure a user account.

In block 420, the user computing device 140 installs a hands-freepayment application 116. For example, the user computing device 110downloads the hands-free payment application 116 from the paymentprocessing system hands-free module 141 over the network 120. The usercomputing device 110 may obtain the hands-free payment application 116from any other suitable location. The hands-free payment application 116on the user computing device 110 may be configured with the user accountinformation, user preferences, or other suitable information. A user 101may be required to make a feature selection to obtain the benefits ofthe techniques described herein.

The hands-free payment application 116 may provide options, data,configurable alerts, and other suitable benefits to the user 101. Forexample, the hands-free payment application 116 may comprise a listingof participating merchant systems 130 and merchant locations. Thelisting may be updated periodically from the payment processing system140. The hands-free payment application 116 may notify the user 101 whenthe user 101 is within a configured vicinity of a participating merchantsystem 130. The hands-free payment application 116 may provide the user102 with options to update payment preferences. The hands-free paymentapplication 116 may provide the user 101 with a listing of recenttransactions. The hands-free payment application 116 may provide anyother suitable information to the user 101.

In block 430, the user computing device 110 enters a location of themerchant system 130. The user 101 may enter the merchant locationcarrying the user computing device 101 in a pocket or a bag, in thehands of the user 101, or in any suitable manner. The location of themerchant system 130 may be a store location, a kiosk location, or anysuitable physical location of a merchant system 130. In an alternateexample, a salesperson 102 may be mobile and arrive at a location of theuser 101. For example, the merchant system 130 may be a restaurant andthe salesperson 102 may be a delivery person possessing a merchantcomputing device 150.

In certain example embodiments, the hands-free payment application 116alerts the user 101 when the user 101 is in the vicinity of a merchantsystem 130 that accepts hands-free payments. The alert may be providedvia a message on the user computing device 110, via an email or a text,or in any suitable manner.

The alert may be based on the location of the user 101 as determined bythe GPS module 118. For example, the hands-free payment application 116accesses the GPS data from the GPS module 118 and compare the GPSlocation to a list of locations of merchant systems 130 that accepthands-free payments. If a match results from the comparison, then analert is generated and provided to the user. The match may result if theuser 101 is within a configured distance of the merchant system 130.

The alerts may be configured to alert in any suitable manner. In anexample, the alerts may be combined in commercially dense environment orthe alerts may be presented individually. In another example, the alertsmay be configured to only alert the user 101 a configured number oftimes. For example, the alert may be presented three times, but upon afourth instance, the alert is not presented. The alerts may be presentedas a notification with an audible alert, a vibration, a popup alert onthe user interface 115 of the user computing device 110, or othersuitable alert.

In block 440, the user computing device 110 recognizes a beacon viawireless communication at the location of the merchant system 130 andapproves the merchant system 130. Block 440 is described in more detailhereinafter with reference to the methods 440 a and 440 b described inFIGS. 6 and 7.

FIG. 6 is a block flow diagram depicting a method 440 a for a usercomputing device 110 to recognize a beacon via wireless communication ata location of a merchant system and approve the merchant system, inaccordance with certain example embodiments. The method 440 a isdescribed with reference to the components illustrated in FIG. 1. Incertain embodiments, some or all of the blocks of the method 440 a areperformed by the payment processing system 140. For example, the beaconidentifier and other suitable data are transmitted to the paymentprocessing system 140 for analysis and verification.

In block 610, the user computing device 110 receives the beacon. Theuser computing device 110 may be configured to search for beacons orother wireless signals. Upon entering the range of the broadcast of themerchant computing device 150, the user computing device 110 receivesthe beacon. The user computing device 110 may search for a beaconcontinuously, when instructions to begin searching for the beacon arereceived from the user 101, when the location of the user computingdevice 110 dictates a beacon is near, or at any suitable time. In anexample, the user computing device 110 may provide an alert that amerchant system 130 at the location of the user computing device 110 islisted on a database as a participant in the hands-free transactionprogram. Upon recognizing that the a merchant system 130 is listed onthe database as a participant in the hands-free transaction program, theuser computing device 110 may begin a search for beacons or provide arecommendation to the user 101 that a search should be conducted.

When the user computing device 110 receives the beacon, the usercomputing device 110 determines the communication technology being usedand stores the data associated with the beacon. The data may be storedon the data storage unit 112 or in any suitable location. In certainembodiments, the user computing device 110 transmits the beacon data tothe payment processing system 140 and, the payment processing system 140conducts some or all of the remaining steps of the method 440 a.

In block 620, the user computing device 110 identifies the beaconidentifier. The user computing device 110 interprets the datatransmitted in the beacon and recognizes that the beacon is associatedwith the payment processing system 140 and/or the hands-free paymentapplication 116 based on the data in the beacon. In an example, thehands-free payment application 116 extracts data from the beacon, suchas a beacon identifier, a merchant system 130 name, communicationtechnology requirements, or any other suitable information.

The user computing device 110 locates the beacon identifier in thebeacon data via any suitable method. For example, the user computingdevice 110 may analyze the content and extract the beacon identifierbased on the location of the identifier within the data, based oninstructions from the merchant computing device 150, based oninstructions within the data identifying the location, based on anindustry standard, or based on any other suitable method.

In block 630, the user computing device 110 accesses a list of approvedbeacon identifiers. The list may comprise beacon identifiers that areapproved by the payment processing system 140, by the user 101, by afinancial institution that issued a payment account to the user 101, orby any other suitable party. Additionally, the list may be composed byone party and revised or limited by another party. The list may bestored on the data storage unit 112, on the payment processing system140, cloud computing environment, or any suitable storage location. Theuser computing device 110 may access the list in any suitable manner,such as over the network 120.

In block 640, the user computing device 110 determines that the beaconidentifier is represented on the list of approved beaconidentifications. The user computing device 110 may compare the data fromthe beacon to the database of beacon data to determine an identity ofthe merchant system 130 associated with the beacon and to verify theauthenticity of the beacon. If the beacon identifier is listed on thedatabase as a verified beacon identifier associated with a verifiedmerchant system 130, then the method 440 a may proceed. In certainembodiments, the user computing device 110 may use a prefix, a suffix orsome regular expression to determine if the beacon identifier ispotentially a valid identifier. The user computing device 110 device maycommunicate with the payment processing system 140 to further verify theauthenticity of the beacon based on regular expression.

In certain example embodiments, the hands-free payment application 116has received a list of one or more merchant systems 130 with which theuser 101 does not wish to conduct hands-free transactions. If thehands-free payment application 116 identifies the merchant system 130 onthe list, then the hands-free payment application 116 will not respondto the beacon identifier. In this case, hands-free payment application116 may end any wireless communication with the payment processingsystem 140 and/or with the merchant computing device 150 and not provideany response or acknowledgement to the merchant computing device 150while the user computing device 110 is at the location of the merchantsystem 130. Additionally or alternatively, the payment processing system140 cease responding or acknowledging the merchant computing device 150.

The list may be populated by the user 101, the payment processing system140, or any suitable party. In an example, a user 101 adds a merchantsystem 130 to the list based on a previous experience, because themerchant system 130 does not appear trustworthy, or for any suitablereason.

If the payment processing system 140, in an alternate embodiment,performed some or all of the blocks of method 440 a, then the paymentprocessing system 140 transmits the determination that the beaconidentifier is represented on the list of approved beacon identificationsto the user computing device 110.

From block 640, the method 440 a proceeds to block 230 of FIG. 2.

An alternate embodiment of block 440 of FIG. 4 is explained in greaterdetail in the method 440 b of FIG. 7.

FIG. 7 is a block flow diagram depicting a method 440 b for a usercomputing device 110 to recognize a beacon via wireless communication ata location of a merchant system 130 and approve the merchant system 130using location data, in accordance with certain example embodiments. Themethod 440 b is described with reference to the components illustratedin FIG. 1. In certain embodiments some or all of the blocks of themethod 440 b are performed by the payment processing system 140. Forexample, the beacon identifier, the location data, and other suitabledata are transmitted to the payment processing system 140 for analysisand verification.

Blocks 610 and 620 of FIG. 7 are substantially similar to Blocks 610 and620 of FIG. 6 as described previously herein.

In block 730, the user computing device 110 accesses a list of approvedbeacon identifiers and merchant system locations. The list may comprisebeacon identifiers and locations of merchant systems 130 that areapproved by the payment processing system 140, by the user 101, by afinancial institution that issued a payment account to the user 101, orby any other suitable party. Additionally, the list may be composed byone party and revised or limited by another party. The list may bestored on the data storage unit 112, on the payment processing system140, cloud computing environment, or any suitable storage location. Theuser computing device 110 may access the list in any suitable manner,such as over the network 120. In certain embodiments, the paymentprocessing system 140 will access the list upon receiving the beaconidentifier and other data from the user computing device 110.

The locations of the merchant systems 130 are associated with the beaconidentifiers that are associated with the merchant systems 130. Forexample, a particular merchant system 130 would be identified with aparticular beacon identifier and a particular location in the database.The location may be stored as a longitude and latitude, a streetaddress, or any suitable location identification. The locations may beprovided by the merchant system 130, obtained from mapping programs,input by payment processing system 140 operators, or provided by anysuitable source. In certain embodiments, the locations of the merchantsystems 130 are in the same database with the beacon identifiers. Inalternate embodiments, the locations of the merchant systems 130 are ina second database.

In block 740, the user computing device 110 determines the location ofthe user 101. For example, the user computing device 110 uses the GPSmodule 118 of the user computing device 110 to determine the location.In the example, the GPS module 118 communicates with one or moresatellites of the Global Positioning System (“GPS”) or othersatellite-based location system to determine the location of the usercomputing device 110. In an example embodiment, the delivery system 140periodically or continuously communicates with the GPS module 118 duringapplicable time periods to determine and log the location of the usercomputing device 110. In another embodiment, the location of the usercomputing device 110 is identified based on Wi-Fi signals, cellularlocation, or any suitable location identifying technology. Any locationdetermining hardware, software, or combination of hardware and softwareis represented by the GPS module 118.

After determining the location, the user computing device 110 stores thelocation for comparison with the merchant system database. In certainembodiments, the user computing device 110 transmits the determinedlocation to the payment processing system 140 to compare to thedatabase.

In block 750, the user computing device 110 determines if a location ofthe user computing device 110 matches an expected location of themerchant system 130 based on the location associated with the beaconidentifier in the database. The user computing device 110 compares thestored location of the user computing device 110 to the location of themerchant system 130 associated with the beacon identifier. For example,the user computing device 110 locates the beacon identifier in thedatabase and identifies the merchant system 130 associated with thebeacon identifier. The user computing device 110 then identifies thelocation of the merchant system 130 from the database. The identifiedlocation is compared to the location received from the user computingdevice 110.

If the locations are identical or within a configured distance of eachother, then a location match is identified. For example, if thelocations are determined to be less than 100 feet apart, then a match isidentified. If the locations are greater than 100 feet apart, then amatch is not identified. Any suitable distance, such as 10 feet, 100feet, or 500 feet, may be used.

In certain embodiments, the payment processing system 140 determines ifa location of the user computing device 110 matches an expected locationof the merchant system 130 based on the location associated with thebeacon identifier in a similar manner.

In block 760, if the locations match, then the user computing device 110determines that the beacon identifier is represented on the list ofapproved beacon identifications. If no match is identified, then thebeacon is not verified as an approved beacon from an approved merchantsystem 130. If the beacon identifier is verified, then the method 440 bmay proceed. In certain embodiments, the payment processing system 140determines that the beacon identifier is represented on the list ofapproved beacon identifications in a similar manner.

If the payment processing system 140 identified the match, then thepayment processing system 140 transmits the match to the user computingdevice 110 so that the user computing device 110 may proceed to create atoken.

From block 760, the method 440 b returns to block 230 of FIG. 2.

Returning to FIG. 2, in block 230, the user computing device 110provides token authorization to the merchant system 130. Block 230 isdescribed in greater detail in the method 230 of FIG. 5.

FIG. 5 is a block flow diagram depicting a method 230 for a usercomputing device 110 to provide a token authorization to the merchantsystem 130, in accordance with certain example embodiments. The method230 is described with reference to the components illustrated in FIG. 1.

In block 510, the user computing device 110 generates a token for apotential transaction. The token may be any data associated with theuser account that is generated by the user computing device 110 forsecure transmission to another computing device. The token may representan authorization or acknowledgement by the user computing device 110that the user computing device 110 is in communication with a merchantcomputing device 110 and that a transaction may be forthcoming. Thetoken may comprise a user account identifier, the beacon identifier, auser computing device 110 identifier, or any suitable data. The tokenmay be encrypted or otherwise configured to only be readable by one ormore of the payment processing system hands-free module 141, the usercomputing device 110, a financial account server associated with thepayment processing system 140, or any suitable computing system.

In certain example embodiments, the token, or certain portions of thetoken, is not readable by the merchant computing device 150. To generatethe token, the user computing device 110 may compile all of the dataneeded for the token into a data file and insert identifiers, labels, orother items to prepare the token for transmission. The token may providea time that the token will expire. For example, the token may only beusable for one hour after being generated. In the example, after the onehour has elapsed, the token is no longer valid for use and the paymentprocessing system 140 will reject any transaction request including anexpired token. In certain example embodiments, the token comprises thebeacon identifier, the location of the user computing device 110, theuser account identifier, or any other suitable data.

The token may be generated by the hands-free application 116, or anotherapplication module or component of the user computing device 110. Forexample, an application executing on a secure element or other securememory of the user computing device 110 may generate the token. Thetoken may be generated in response to receiving the beacon from themerchant computing device 150. That is, the token is not generated untilthe user computing device 110 recognizes the beacon and recognizes aneed to transmit the token based on the identify of the merchant system130, the location of the user computing device 110, or any otherfactors. In an alternate embodiment, the token is created in advance.The token, or a series of tokens, may be created and stored on the datastorage unit 112 of the user computing device 110. The token may beaccessed from the storage location and utilized when requested by thehands-free payment application 116.

In certain embodiments, a token is not generated by the user computingdevice 110. For example, the payment processing system 140 may generatethe token. The payment processing system 140 may receive, from the usercomputing device 110, a set of authentication data for the user accountand generate a token. The authentication data may comprise user 101data, account data, passwords, user computing device 110 data, or anysuitable data that may be used to authenticate the user account. Theauthentication data may be transmitted to the payment processing system140 when the user computing device 110 receives the beacon from themerchant computing device 150. The user computing device 110 may accessthe authentication data from a database on the data storage unit 112, orfrom data stored in the hands-free payment application 116. Theauthentication data is transmitted in a similar fashion as thedescription of the transmission of the token from the user computingdevice 110 to the payment processing system 140. The token that isgenerated by the payment processing system 140 is transmitted back tothe user computing device 110 or to the merchant computing device 150 onbehalf of the user computing device 110.

In block 520, the user computing device 110 transmits the token to thepayment processing system 140. The user computing device 110 maytransmit a new token at the time that the user computing device 110recognizes the beacon and the beacon identifier, at a time that aprevious token has expired, or upon any suitable schedule. The usercomputing device 110 may transmit the token via an Internetcommunication over the Internet, Bluetooth communication, Wi-Ficommunication, cellular connection, or via any suitable communicationprotocol.

In block 530, the payment processing system hands-free module 141approves the token and transaction parameters. The payment processingsystem hands-free module 141 receives the token and any associatedinformation from the user computing device 110 and determines if thebeacon identifier can be verified.

The verification may be similar to the methods of the user computingdevice 110 to verify the beacon identifier in the method 440 a in FIG. 6or method 440 b in FIG. 7. For example, the payment processing systemhands-free module 141 may compare the beacon identifier to a database todetermine if the beacon identifier is registered and approved. Thepayment processing system hands-free module 141 may compare a locationof the user computing device 110, as determined by the globalpositioning system (“GPS”) module 118, to a database of locationsassociated with the beacon identifiers. If not provided already, thepayment processing system hands-free module 141 may request the GPSlocation of the user computing device 110 in a communication over thenetwork 120 and receive a response from the user computing device 110.If the location of the user computing device 110 matches the expectedlocation of the merchant computing device 150, then the token isverified. Any other suitable criteria for verifying the token may beemployed.

The payment processing system hands-free module 141 may verify the useraccount on the payment processing system 140 to determine if the useraccount is active and available for transactions. For example, thepayment processing system may access the user account and determine ifthe account has funds available for use as stored value funds, or if theaccount has a valid credit or debit account associated with the accountwith which to conduct transaction.

In block 540, the payment processing system hands-free module 141transmits the token to a merchant computing device 150. If the token isverified, the payment processing system hands-free module 141communicates the token to the merchant computing device 150 to allow ahands-free transaction to be conducted. The token provides the merchantcomputing device 150 with the authorization to initiate a transaction onbehalf of the user account. In an example embodiment, the token istransmitted to the merchant computing device 150 upon the detection bythe user computing device of the beacon. Thus, he token is transmittedto the merchant computing device 150 before a transaction is initiatedby the merchant computing device 150 or the user computing device 110.

In an alternate embodiment, the user computing device 110 provides thetoken directly to the merchant computing device 150. For example, theuser computing device 110 generates the token as described in block 510and transmits the token to the merchant computing device 150 instead ofto the payment processing system 140. In a certain embodiment, the usercomputing device 110 may require approval from the payment processingdevice 140 before transmitting the token to the merchant computingdevice 150.

Alternatively, the user computing device may transmit authorization datato the payment processing system. The authentication data may compriseuser 101 data, account data, passwords, user computing device 110 data,or any suitable data that may be used to authenticate the user account.The authentication data may be transmitted to the payment processingsystem 140 when the user computing device 110 receives the beacon fromthe merchant computing device 150. The user computing device 110 mayaccess the authentication data from a database on the data storage unit112, or from data stored in the hands-free payment application 116. Theauthentication data is transmitted in a similar fashion as thedescription of the transmission of the token from the user computingdevice 110 to the payment processing system 140. The token that isgenerated by the payment processing system 140 is transmitted back tothe user computing device 110. The user computing device 110 thentransmits the received token to the merchant computing device 150.

From block 540, the method 230 returns to block 240 of FIG. 2.

In block 240, the salesperson 102 enters transaction details into themerchant computing device 150. In an example, the user 101 selects aproduct for purchase at the location of the merchant system 130. Theterm “product” includes tangible and intangible products, as well asservices. The salesperson 102 scans the product with a barcode scanneror in any suitable manner enters the product details into the merchantcomputing device 150. The transaction data may include the productidentification, the product price, quantity of products, merchantlocation, merchant identification, or any other suitable information.

In block 250, the merchant computing device 150 transmits thetransaction details and the token to the payment processing systemhands-free module 141. The salesperson 102 selects the appropriatetoken. In an example, only one token is available for selection. Inanother example, the token is associated with the user 101 when the user101 enters the merchant location and the token is received. In anotherexample, the token is identifiable as being associated with the user 101based on an identifier of the user 101, such as a picture.

In the example, the merchant computing device 150 has received andstored one or more tokens associated with one or more user accounts. Themerchant computing device 150 identifies user account informationassociated with the tokens. The information may be provided by the tokenor by a communication with a database associated with the token. Inanother example, the user account information may have been provided tothe merchant computing device 150 with a previous token or in a previoustransaction. The user account information and/or the tokens aredisplayed to the salesperson 102 to allow the salesperson 102 to selectthe appropriate token or user account. The salesperson 102 identifiesthe user account or token and associates the user account with theproduct being purchased by the user 101. The user account may berepresented to the salesperson 102 by a picture of the user 101, by aname of the user 101, by a configured alias, or by any suitableidentifier of the user 101 or the user account.

The salesperson 102 provides an indication on the user interface 155 ofthe merchant computing device 150 that the user 101 has agreed to thepurchase transaction. The user 101 may agree to the transaction byverbally informing the salesperson 102, or by any other suitable method.The salesperson 102 may select on the user interface the transactiondetails, the token, the user account, and other data and associate thedata with the transaction request. The data is associated by themerchant computing device 150 and a transaction request is prepared,such as by entering the data on the appropriate entry blocks on atransaction request template.

The merchant computing device 150 transmits the transaction details andthe token to the payment processing system 140 to conduct thetransaction. The transaction details may be the identification of theproduct or products to be purchased, the total price, the merchantidentification, or any other suitable details.

In block 260, the payment processing system 140 conducts the transactionand transmits a confirmation to merchant computing device 150. Thepayment processing system hands-free module 141 receives the transactiondetails and the token from the merchant computing device 150 andprocesses the transaction. The payment processing system hands- freemodule 141 verifies the token as the same token that was previouslyreceived from the user computing device 110 (or generated by the paymentprocessing system hands-free module 141) and provided to the merchantsystem computing device 150. If the token is not verified as the sametoken, then the transaction does not proceed. If the token is notverified, the payment processing system hands-free module 141 mayrequest the correct token from the merchant system computing device 150,decline the transaction, alert a payment processing system hands-freemodule 141 operator, or perform any suitable action to complete orcancel the transaction.

Upon a verification of the token, the payment processing systemhands-free module 141 determines if the user account has the fundsavailable for the transaction. In an example, the payment processingsystem hands-free module 141 may apply the transaction by deducting theamount of the transaction from a pool of funds stored in the useraccount. In another example, the payment processing system hands-freemodule 141 may provide an authorization request to a financial accountissuer, such as a credit or debit card, associated with the account.Upon receiving an authorization from the financial account issuer, thepayment processing system hands-free module 141 proceeds with thetransaction. The user account may be funded by any other suitablesource, such as a bank account, a stored value account, a debit card, orany suitable source. The payment processing system hands-free module 141debits the appropriate account of the user 101 for the amount of thetransaction and credits an account of the merchant for the amount of thetransaction.

The payment processing system hands-free module 141 provides anotification to the merchant system computing device 150 that thetransaction is authorized. The authorization may be presented to thesalesperson 102 by the user interface 155 of the merchant computingdevice 150. Upon receiving the authorization, the salesperson 102 mayprovide the product and a receipt to the user 101 or the user computingdevice 110. Upon settlement of the transaction, the payment processingsystem hands-free module 141 provides the funds for the transaction tothe merchant system 130.

In block 270, upon a successful conducting of the transaction, thepayment processing system 140 transmits a notification of the successfulcompletion of the transaction to the user computing device 110. Thenotification provides the details of the transaction, such as thetransaction amount, the product purchased, and other suitable details.The notification allows the user 101 an opportunity to quickly disputethe charge. For example, the salesperson 102 or the merchant computingdevice 150 may have associated the wrong token with the transactiondetails. In another example, the transaction details were in error andan incorrect amount was deducted from the user account. The user 101receives the notification on the user computing device 110 and views thetransaction details on the user interface 115. In an alternate example,the user 101 receives the notification from the payment processingsystem 140 as an email, a text, as a notification on the hands-freepayment application, or in any suitable manner. In an alternateembodiment, the notification may be provided by the merchant computingdevice 150. For example, the merchant computing device 150 provides atext to the user computing device with the transaction details.

The notifications, receipts, and other transaction data may be stored ina list on a database or other storage system on the user computingdevice 110, the hands-free payment application 116, or any suitablestorage location. The notifications, receipts, and other transactiondata may be stored in a list on a user account or other location on thepayment processing system 140. The user 101 may access the list toreview recent transactions, to seek refunds, or for any suitable reason.In certain examples, the list on the user computing device 110 maysynchronize with the list on the payment processing system 140 eitherautomatically or when prompted by the user 101.

All refunds for transactions may be conducted through the hands-freeapplication 116. The user 101 initiates the hands-free application atthe location of the merchant 130. The user 101 presents a transactionidentification from a notification or a receipt to complete the refund.For example, the user 101 selects a notification from a recenttransaction that has been transmitted to the user computing device 110.The user 101 may select a receipt for a recent transaction from thenotification, from a text from the merchant computing device 150, orfrom any suitable provider. The user 101 may either present the receiptor notification via the hands-free application 116, an email receipt, ora print out of the email receipt.

To obtain a refund, a user 101 opens a list of completed transactions onthe hands-free application 116 and selects the desired receipt.Additionally, the user 101 may manually enter the transactionidentification, or scan a QR code on the receipt displayed on the hands-free application to obtain data from a particular transaction. The user101 may access a list of recent transactions on the user computingdevice 110. The list may be displayed on the user interface 115 withcontrol objects for selecting a transaction. The user computing device110 may receive an input of a selection from the user 101 and transmitthe details of the selected transaction to the merchant system computingdevice 150.

Once selected, a full or partial amount can be refunded to the useraccount. The merchant system 130 may transfer the refund amount to thepayment processing system 140 for deposit into the user account. Thefunds may alternatively be transmitted by the merchant system 130 or thepayment processing system 140 to a credit card account or other accountassociated with the user account. Any other refund method may beemployed. The transaction history and receipt in the user account willreflect the full or partial refund.

If a user 101 desires to dispute a charge, the user 101 opens thehands-free application 116 and selects an option to dispute atransaction that has been conducted with the user account. Thehands-free application 116 transmits a notification to the paymentprocessing system hands-free module 141. An operator at the paymentprocessing system 140 may contact the user 101 to resolve the issue. Thehands-free application 116 may further transmit the transactionidentification or other transaction details to the payment processingsystem hands-free module 141.

Other Example Embodiments

FIG. 8 depicts a computing machine 2000 and a module 2050 in accordancewith certain example embodiments. The computing machine 2000 maycorrespond to any of the various computers, servers, mobile devices,embedded systems, or computing systems presented herein. The module 2050may comprise one or more hardware or software elements configured tofacilitate the computing machine 2000 in performing the various methodsand processing functions presented herein. The computing machine 2000may include various internal or attached components such as a processor2010, system bus 2020, system memory 2030, storage media 2040,input/output interface 2060, and a network interface 2070 forcommunicating with a network 2080.

The computing machine 2000 may be implemented as a conventional computersystem, an embedded controller, a laptop, a server, a mobile device, asmartphone, a set-top box, a kiosk, a vehicular information system, onemore processors associated with a television, a customized machine, anyother hardware platform, or any combination or multiplicity thereof. Thecomputing machine 2000 may be a distributed system configured tofunction using multiple computing machines interconnected via a datanetwork or bus system.

The processor 2010 may be configured to execute code or instructions toperform the operations and functionality described herein, managerequest flow and address mappings, and to perform calculations andgenerate commands. The processor 2010 may be configured to monitor andcontrol the operation of the components in the computing machine 2000.The processor 2010 may be a general purpose processor, a processor core,a multiprocessor, a reconfigurable processor, a microcontroller, adigital signal processor (“DSP”), an application specific integratedcircuit (“ASIC”), a graphics processing unit (“GPU”), a fieldprogrammable gate array (“FPGA”), a programmable logic device (“PLD”), acontroller, a state machine, gated logic, discrete hardware components,any other processing unit, or any combination or multiplicity thereof.The processor 2010 may be a single processing unit, multiple processingunits, a single processing core, multiple processing cores, specialpurpose processing cores, co-processors, or any combination thereof.According to certain example embodiments, the processor 2010 along withother components of the computing machine 2000 may be a virtualizedcomputing machine executing within one or more other computing machines.

The system memory 2030 may include non-volatile memories such asread-only memory (“ROM”), programmable read-only memory (“PROM”),erasable programmable read-only memory (“EPROM”), flash memory, or anyother device capable of storing program instructions or data with orwithout applied power. The system memory 2030 may also include volatilememories such as random access memory (“RAM”), static random accessmemory (“SRAM”), dynamic random access memory (“DRAM”), and synchronousdynamic random access memory (“SDRAM”). Other types of RAM also may beused to implement the system memory 2030. The system memory 2030 may beimplemented using a single memory module or multiple memory modules.While the system memory 2030 is depicted as being part of the computingmachine 2000, one skilled in the art will recognize that the systemmemory 2030 may be separate from the computing machine 2000 withoutdeparting from the scope of the subject technology. It should also beappreciated that the system memory 2030 may include, or operate inconjunction with, a non-volatile storage device such as the storagemedia 2040.

The storage media 2040 may include a hard disk, a floppy disk, a compactdisc read only memory (“CD-ROM”), a digital versatile disc (“DVD”), aBlu-ray disc, a magnetic tape, a flash memory, other non-volatile memorydevice, a solid state drive (“SSD”), any magnetic storage device, anyoptical storage device, any electrical storage device, any semiconductorstorage device, any physical-based storage device, any other datastorage device, or any combination or multiplicity thereof. The storagemedia 2040 may store one or more operating systems, application programsand program modules such as module 2050, data, or any other information.The storage media 2040 may be part of, or connected to, the computingmachine 2000. The storage media 2040 may also be part of one or moreother computing machines that are in communication with the computingmachine 2000 such as servers, database servers, cloud storage, networkattached storage, and so forth.

The module 2050 may comprise one or more hardware or software elementsconfigured to facilitate the computing machine 2000 with performing thevarious methods and processing functions presented herein. The module2050 may include one or more sequences of instructions stored assoftware or firmware in association with the system memory 2030, thestorage media 2040, or both. The storage media 2040 may thereforerepresent examples of machine or computer readable media on whichinstructions or code may be stored for execution by the processor 2010.Machine or computer readable media may generally refer to any medium ormedia used to provide instructions to the processor 2010. Such machineor computer readable media associated with the module 2050 may comprisea computer software product. It should be appreciated that a computersoftware product comprising the module 2050 may also be associated withone or more processes or methods for delivering the module 2050 to thecomputing machine 2000 via the network 2080, any signal-bearing medium,or any other communication or delivery technology. The module 2050 mayalso comprise hardware circuits or information for configuring hardwarecircuits such as microcode or configuration information for an FPGA orother PLD.

The input/output (“I/O”) interface 2060 may be configured to couple toone or more external devices, to receive data from the one or moreexternal devices, and to send data to the one or more external devices.Such external devices along with the various internal devices may alsobe known as peripheral devices. The I/O interface 2060 may include bothelectrical and physical connections for operably coupling the variousperipheral devices to the computing machine 2000 or the processor 2010.The I/O interface 2060 may be configured to communicate data, addresses,and control signals between the peripheral devices, the computingmachine 2000, or the processor 2010. The I/O interface 2060 may beconfigured to implement any standard interface, such as small computersystem interface (“SCSI”), serial-attached SCSI (“SAS”), fiber channel,peripheral component interconnect (“PCI”), PCI express (PCIe), serialbus, parallel bus, advanced technology attached (“ATA”), serial ATA(“SATA”), universal serial bus (“USB”), Thunderbolt, FireWire, variousvideo buses, and the like. The I/O interface 2060 may be configured toimplement only one interface or bus technology. Alternatively, the I/Ointerface 2060 may be configured to implement multiple interfaces or bustechnologies. The I/O interface 2060 may be configured as part of, allof, or to operate in conjunction with, the system bus 2020. The I/Ointerface 2060 may include one or more buffers for bufferingtransmissions between one or more external devices, internal devices,the computing machine 2000, or the processor 2010.

The I/O interface 2060 may couple the computing machine 2000 to variousinput devices including mice, touch-screens, scanners, electronicdigitizers, sensors, receivers, touchpads, trackballs, cameras,microphones, keyboards, any other pointing devices, or any combinationsthereof. The I/O interface 2060 may couple the computing machine 2000 tovarious output devices including video displays, speakers, printers,projectors, tactile feedback devices, automation control, roboticcomponents, actuators, motors, fans, solenoids, valves, pumps,transmitters, signal emitters, lights, and so forth.

The computing machine 2000 may operate in a networked environment usinglogical connections through the network interface 2070 to one or moreother systems or computing machines across the network 2080. The network2080 may include wide area networks (WAN), local area networks (LAN),intranets, the Internet, wireless access networks, wired networks,mobile networks, telephone networks, optical networks, or combinationsthereof. The network 2080 may be packet switched, circuit switched, ofany topology, and may use any communication protocol. Communicationlinks within the network 2080 may involve various digital or an analogcommunication media such as fiber optic cables, free-space optics,waveguides, electrical conductors, wireless links, antennas,radio-frequency communications, and so forth.

The processor 2010 may be connected to the other elements of thecomputing machine 2000 or the various peripherals discussed hereinthrough the system bus 2020. It should be appreciated that the systembus 2020 may be within the processor 2010, outside the processor 2010,or both. According to some embodiments, any of the processor 2010, theother elements of the computing machine 2000, or the various peripheralsdiscussed herein may be integrated into a single device such as a systemon chip (“SOC”), system on package (“SOP”), or ASIC device.

In situations in which the systems discussed here collect personalinformation about users, or may make use of personal information, theusers may be provided with an opportunity or option to control whetherprograms or features collect user information (e.g., information about auser's social network, social actions or activities, profession, auser's preferences, or a user's current location), or to control whetherand/or how to receive content from the content server that may be morerelevant to the user. In addition, certain data may be treated in one ormore ways before it is stored or used, so that personally identifiableinformation is removed. For example, a user's identity may be treated sothat no personally identifiable information can be determined for theuser, or a user's geographic location may be generalized where locationinformation is obtained (such as to a city, ZIP code, or state level),so that a particular location of a user cannot be determined. Thus, theuser may have control over how information is collected about the userand used by a content server.

Embodiments may comprise a computer program that embodies the functionsdescribed and illustrated herein, wherein the computer program isimplemented in a computer system that comprises instructions stored in amachine-readable medium and a processor that executes the instructions.However, it should be apparent that there could be many different waysof implementing embodiments in computer programming, and the embodimentsshould not be construed as limited to any one set of computer programinstructions. Further, a skilled programmer would be able to write sucha computer program to implement an embodiment of the disclosedembodiments based on the appended flow charts and associated descriptionin the application text. Therefore, disclosure of a particular set ofprogram code instructions is not considered necessary for an adequateunderstanding of how to make and use embodiments. Further, those skilledin the art will appreciate that one or more aspects of embodimentsdescribed herein may be performed by hardware, software, or acombination thereof, as may be embodied in one or more computingsystems. Moreover, any reference to an act being performed by a computershould not be construed as being performed by a single computer as morethan one computer may perform the act.

The example embodiments described herein can be used with computerhardware and software that perform the methods and processing functionsdescribed herein. The systems, methods, and procedures described hereincan be embodied in a programmable computer, computer-executablesoftware, or digital circuitry. The software can be stored oncomputer-readable media. For example, computer-readable media caninclude a floppy disk, RAM, ROM, hard disk, removable media, flashmemory, memory stick, optical media, magneto-optical media, CD-ROM, etc.Digital circuitry can include integrated circuits, gate arrays, buildingblock logic, field programmable gate arrays (FPGA), etc.

The example systems, methods, and acts described in the embodimentspresented previously are illustrative, and, in alternative embodiments,certain acts can be performed in a different order, in parallel with oneanother, omitted entirely, and/or combined between different exampleembodiments, and/or certain additional acts can be performed, withoutdeparting from the scope and spirit of various embodiments. Accordingly,such alternative embodiments are included in the scope of the followingclaims, which are to be accorded the broadest interpretation so as toencompass such alternate embodiments.

Although specific embodiments have been described above in detail, thedescription is merely for purposes of illustration. It should beappreciated, therefore, that many aspects described above are notintended as required or essential elements unless explicitly statedotherwise. Modifications of, and equivalent components or actscorresponding to, the disclosed aspects of the example embodiments, inaddition to those described above, can be made by a person of ordinaryskill in the art, having the benefit of the present disclosure, withoutdeparting from the spirit and scope of embodiments defined in thefollowing claims, the scope of which is to be accorded the broadestinterpretation so as to encompass such modifications and equivalentstructures.

What is claimed is:
 1. A computer-implemented method to conductautomatic hands-free transactions based on determinations that usercomputing devices are located at merchant locations, comprising:receiving, by a user computing device, a beacon identifier from amerchant computing device associated with a particular merchantcomputing system; determining, by the user computing device, a locationof the user computing device at a time when the user computing devicereceived the beacon identifier from the merchant computing device;receiving, by one or more computing devices, a communication from theuser computing device, the communication comprising the received beaconidentifier and the determined location of the user computing device;identifying in a database, by the one or more computing devices, theparticular merchant computing system associated with the beaconidentifier and a location of the particular merchant; determining, bythe one or more computing devices, a location of the user computingdevice based on the location communicated by the user computing device;determining, by the one or more computing devices, that the location ofthe user computing device matches the identified location of theparticular merchant computing system; and communicating, by the one ormore computing devices, the determination that the location of the usercomputing device matches the identified location of the particularmerchant computing system to the user computing device.
 2. Thecomputer-implemented method of claim 1, wherein the beacon identifier isa service set identifier.
 3. The computer-implemented method of claim 1,wherein the location is determined based on data from a globalpositioning system module of the user computing device.
 4. Thecomputer-implemented method of claim 1, wherein the location of themerchant computing system is a street address.
 5. Thecomputer-implemented method of claim 1, wherein the location isdetermined based on data from a Wi-Fi communication received by the usercomputing device from a Wi-Fi transmitter.
 6. The computer-implementedmethod of claim 1, wherein the beacon identifier is received, via awireless communication, by the user computing device from the merchantcomputing device.
 7. The computer-implemented method of claim 1, furthercomprising receiving, by the one or more computing devices, a tokenauthorization from the user computing device.